package net.zio.kamenriderzioaddon.ridersystem.behavior;

import net.minecraft.world.entity.player.Player;
import net.zio.kamenriderzioaddon.ridersystem.registry.AwakeningConfig;
import net.zio.kamenriderzioaddon.ridersystem.registry.FullRiderConfig;

/**
 * 强化形态变身行为接口
 */
public interface IAwakeningHenshinBehavior {
    /**
     * 处理强化形态变身
     * @param player 玩家实例
     * @param fullRiderConfig 基础骑士配置
     * @param awakeningConfig 强化形态配置
     */
    void handleAwakeningHenshin(Player player, FullRiderConfig fullRiderConfig, AwakeningConfig awakeningConfig);

    /**
     * 处理强化形态解除
     * @param player 玩家实例
     * @param fullRiderConfig 基础骑士配置
     * @param awakeningConfig 强化形态配置
     */
    void handleAwakeningDeactivation(Player player, FullRiderConfig fullRiderConfig, AwakeningConfig awakeningConfig);

    /**
     * 处理待机强化形态
     * @param player 玩家实例
     * @param fullRiderConfig 完整骑士配置
     */
    void handleStandbyAwakening(Player player, FullRiderConfig fullRiderConfig, AwakeningConfig awakeningConfig);

    /**
     * 处理快速强化形态变身
     * @param player 玩家实例
     * @param fullRiderConfig 完整骑士配置
     * @param awakeningConfig 强化形态配置
     */
    void handleQuickTransformation(Player player, FullRiderConfig fullRiderConfig, AwakeningConfig awakeningConfig);
}
